package theFrameworks.desa.dao;

import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;

import org.springframework.stereotype.Repository;

import theFrameworks.desa.domain.Calificacion;
import theFrameworks.desa.domain.Ubicacion;

@Repository
public class CalificacionDAOWithJPA implements CalificacionDAO{

	@PersistenceContext
	protected EntityManager entityManager;
	
	
	public EntityManager getEntityManager() {
		return entityManager;
	}


	public void setEntityManager(EntityManager entityManager) {
		this.entityManager = entityManager;
	}


	public void persist(Calificacion calificacion) {
		entityManager.persist(calificacion);
		
	}


	@SuppressWarnings("unchecked")
	public List<Calificacion> findByUbicacion(Ubicacion ubicacion) {
		Query query = entityManager.createQuery("Select c from Calificacion c where c.ubicacion LIKE :ubicacion");
		query.setParameter("ubicacion", ubicacion + "%");

		return query.getResultList();
	}

}
